package com.ibeetl.cms.entity;

import java.util.Date;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Null;

import org.beetl.sql.core.annotatoin.AutoID;
import org.beetl.sql.core.annotatoin.SeqID;

import com.ibeetl.admin.core.util.ValidateConfig;

import org.beetl.sql.core.TailBean;
import java.math.*;

import com.ibeetl.admin.core.annotation.Dict;
import com.ibeetl.admin.core.entity.BaseEntity;

import org.beetl.sql.core.annotatoin.InsertIgnore;
import org.beetl.sql.core.annotatoin.Version;
import org.beetl.sql.core.annotatoin.LogicDelete;


/* 
* 
* 站点经费申报表
*/
public class SiteFunds extends BaseEntity{

    @NotNull(message = "ID不能为空", groups =ValidateConfig.UPDATE.class)
    @SeqID(name = ORACLE_CORE_SEQ_NAME)
    @AutoID	

    private Integer id ;
	
    //业务状态

    private String businessState ;

    //创建日期

    private Date creationDate ;

    //上报日期

    private Date dateReporting ;


    //业务状态code值


    private String businessStateCode ;
	
    //处理时间


    private Date processTime ;
	
    //处理人


    private String processUserName ;
	
    //处理人id


    private Integer processUserId ;
	
    //处理意见


    private String handlingSuggestion ;
	
    //审核结果


    private String processResult ;
	
    //删除标识
	/*逻辑删除标志*/
	@InsertIgnore
	@LogicDelete(value = 1)

    private Integer delFlag ;
	
    //单位名称

    private String unitName ;

    //批准站文号

    private String approvalNumber ;

    //工作站名称

    private Integer workstationName ;
	
    //资助经费申报项目
    @Dict(type="fundingProjects")
    private String fundingProjects ;
	
    //申报金额

    private BigDecimal declarationAmount ;

    //建站时间

    private Date timeConstruction ;
	
    //开户银行

    private String openingBank ;
	
    //银行卡号

    private String bankNumber ;
	
    //资助经费

    private Long funding ;
	
    //户名

    private String householdName ;
	
    //国家或省博管办同意设站的批文复印件

    private String copiesDocuments ;
	
    //市经费支柱证明材料

    private String proofMaterial ;

    private String year;

    //企业id

    private Integer companyId ;

    //用户id

    private Integer userId ;

    //自我添加(用于初审复审判断)
    private String roleName;

    //特殊情况说明
    private String specialInstructions;

    /**
     * 特殊字段
     * @return
     */
    public String getSpecialInstructions() {
        return specialInstructions;
    }

    /**
     * 特殊字段
     */
    public void setSpecialInstructions(String specialInstructions) {
        this.specialInstructions = specialInstructions;
    }

    public String getRoleName() {
        return roleName;
    }

    public void setRoleName(String roleName) {
        this.roleName = roleName;
    }

    public Integer getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }

    public SiteFunds()
    {
    }

    public Integer getId(){
	    return  id;
    }
    public void setId(Integer id){
        this.id = id;
    }

    /**业务状态
    *@return 
    */
    public String getBusinessState(){
	    return  businessState;
    }
    /**业务状态
    *@param  businessState
    */
    public void setBusinessState(String businessState){
        this.businessState = businessState;
    }

    /**

业务状态code值

    *@return 
    */
    public String getBusinessStateCode(){
	    return  businessStateCode;
    }
    /**

业务状态code值

    *@param  businessStateCode
    */
    public void setBusinessStateCode(String businessStateCode){
        this.businessStateCode = businessStateCode;
    }

    /**

处理时间

    *@return 
    */
    public Date getProcessTime(){
	    return  processTime;
    }
    /**

处理时间

    *@param  processTime
    */
    public void setProcessTime(Date processTime){
        this.processTime = processTime;
    }

    /**

处理人

    *@return 
    */
    public String getProcessUserName(){
	    return  processUserName;
    }
    /**

处理人

    *@param  processUserName
    */
    public void setProcessUserName(String processUserName){
        this.processUserName = processUserName;
    }

    /**

处理人id

    *@return 
    */
    public Integer getProcessUserId(){
	    return  processUserId;
    }
    /**

处理人id

    *@param  processUserId
    */
    public void setProcessUserId(Integer processUserId){
        this.processUserId = processUserId;
    }

    /**

处理意见

    *@return 
    */
    public String getHandlingSuggestion(){
	    return  handlingSuggestion;
    }
    /**

处理意见

    *@param  handlingSuggestion
    */
    public void setHandlingSuggestion(String handlingSuggestion){
        this.handlingSuggestion = handlingSuggestion;
    }

    /**

审核结果

    *@return 
    */
    public String getProcessResult(){
	    return  processResult;
    }
    /**

审核结果

    *@param  processResult
    */
    public void setProcessResult(String processResult){
        this.processResult = processResult;
    }

    /**删除标识
    *@return 
    */
    public Integer getDelFlag(){
	    return  delFlag;
    }
    /**删除标识
    *@param  delFlag
    */
    public void setDelFlag(Integer delFlag){
        this.delFlag = delFlag;
    }

    /**单位名称
    *@return 
    */
    public String getUnitName(){
	    return  unitName;
    }
    /**单位名称
    *@param  unitName
    */
    public void setUnitName(String unitName){
        this.unitName = unitName;
    }

    /**批准站文号
    *@return 
    */
    public String getApprovalNumber(){
	    return  approvalNumber;
    }
    /**批准站文号
    *@param  approvalNumber
    */
    public void setApprovalNumber(String approvalNumber){
        this.approvalNumber = approvalNumber;
    }

    public Integer getWorkstationName() {
        return workstationName;
    }

    public void setWorkstationName(Integer workstationName) {
        this.workstationName = workstationName;
    }

    /**资助经费申报项目
    *@return 
    */
    public String getFundingProjects(){
	    return  fundingProjects;
    }
    /**资助经费申报项目
    *@param  fundingProjects
    */
    public void setFundingProjects(String fundingProjects){
        this.fundingProjects = fundingProjects;
    }

    /**申报金额
    *@return 
    */
    public BigDecimal getDeclarationAmount(){
	    return  declarationAmount;
    }
    /**申报金额
    *@param  declarationAmount
    */
    public void setDeclarationAmount(BigDecimal declarationAmount){
        this.declarationAmount = declarationAmount;
    }

    /**建站时间
    *@return 
    */
    public Date getTimeConstruction(){
	    return  timeConstruction;
    }
    /**建站时间
    *@param  timeConstruction
    */
    public void setTimeConstruction(Date timeConstruction){
        this.timeConstruction = timeConstruction;
    }

    /**开户银行
    *@return 
    */
    public String getOpeningBank(){
	    return  openingBank;
    }
    /**开户银行
    *@param  openingBank
    */
    public void setOpeningBank(String openingBank){
        this.openingBank = openingBank;
    }

    /**银行卡号
    *@return 
    */
    public String getBankNumber(){
	    return  bankNumber;
    }
    /**银行卡号
    *@param  bankNumber
    */
    public void setBankNumber(String bankNumber){
        this.bankNumber = bankNumber;
    }

    /**资助经费
    *@return 
    */
    public Long getFunding(){
	    return  funding;
    }
    /**资助经费
    *@param  funding
    */
    public void setFunding(Long funding){
        this.funding = funding;
    }

    /**户名
    *@return 
    */
    public String getHouseholdName(){
	    return  householdName;
    }
    /**户名
    *@param  householdName
    */
    public void setHouseholdName(String householdName){
        this.householdName = householdName;
    }

    /**国家或省博管办同意设站的批文复印件
    *@return 
    */
    public String getCopiesDocuments(){
	    return  copiesDocuments;
    }
    /**国家或省博管办同意设站的批文复印件
    *@param  copiesDocuments
    */
    public void setCopiesDocuments(String copiesDocuments){
        this.copiesDocuments = copiesDocuments;
    }

    /**市经费支柱证明材料
    *@return 
    */
    public String getProofMaterial(){
	    return  proofMaterial;
    }
    /**市经费支柱证明材料
    *@param  proofMaterial
    */
    public void setProofMaterial(String proofMaterial){
        this.proofMaterial = proofMaterial;
    }

    public String getYear() {
        return year;
    }

    public void setYear(String year) {
        this.year = year;
    }

    public Date getCreationDate() {
        return creationDate;
    }

    public void setCreationDate(Date creationDate) {
        this.creationDate = creationDate;
    }

    public Date getDateReporting() {
        return dateReporting;
    }

    public void setDateReporting(Date dateReporting) {
        this.dateReporting = dateReporting;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }
}
